import { createApp } from 'vue'
import Antd from 'ant-design-vue';
import App from './App.vue'
import 'ant-design-vue/dist/antd.css';
import router from './router'
import store from './store'
import * as Icons from '@ant-design/icons-vue';
import axios from "axios";
import { Tool } from '@/util/tool';


axios.defaults.baseURL = process.env.VUE_APP_SERVER;

const app = createApp(App);
app.use(store).use(router).use(Antd).mount('#app');

// 全局使用图标
const icons: any = Icons;
for (const i in icons) {
    app.component(i, icons[i]);
}

// 测试多环境配置
console.log("环境: ",process.env.NODE_ENV);
console.log("服务端：",process.env.VUE_APP_SERVER);

/**
 * axios拦截器 代码比较固定，以后可直接复制
 */
axios.interceptors.request.use(function (config) {
    console.log('请求参数：', config);
    const token = store.state.user.token;
    if (Tool.isNotEmpty(token)) {
        config.headers.token = token;
        console.log("请求headers增加token:", token);
    }
    return config;
}, error => {
    return Promise.reject(error);
});
axios.interceptors.response.use(function (response) {
    // axios拦截器打印返回结果日志
    console.log('返回结果：', response);
    return response;
}, error => {
    // axios拦截器打印错误日志
    console.log('返回错误：', error);
    return Promise.reject(error);
});
